Don't leak the overflow menu.
authorSoeren Sandmann <sandmann@daimi.au.dk>
Sat, 17 Jan 2004 11:51:28 +0000 (11:51 +0000)
committerSøren Sandmann Pedersen <ssp@src.gnome.org>
Sat, 17 Jan 2004 11:51:28 +0000 (11:51 +0000)
Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

* gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
overflow menu.

* gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public.
[#127726]

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtktoolbar.c
gtk/gtktoolbar.h

index e60c896020fbd323a5dd0f9786f12e2c07d474a9..19bc869ddef840b756478bf48f0e0b9d7c8250e6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
+
+       * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
+       overflow menu.
+       
+       * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
+       [#127726]
+
 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
 
        * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
index e60c896020fbd323a5dd0f9786f12e2c07d474a9..19bc869ddef840b756478bf48f0e0b9d7c8250e6 100644 (file)
@@ -1,3 +1,11 @@
+Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
+
+       * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
+       overflow menu.
+       
+       * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
+       [#127726]
+
 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
 
        * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
index e60c896020fbd323a5dd0f9786f12e2c07d474a9..19bc869ddef840b756478bf48f0e0b9d7c8250e6 100644 (file)
@@ -1,3 +1,11 @@
+Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
+
+       * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
+       overflow menu.
+       
+       * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
+       [#127726]
+
 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
 
        * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
index e60c896020fbd323a5dd0f9786f12e2c07d474a9..19bc869ddef840b756478bf48f0e0b9d7c8250e6 100644 (file)
@@ -1,3 +1,11 @@
+Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
+
+       * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
+       overflow menu.
+       
+       * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
+       [#127726]
+
 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
 
        * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
index e60c896020fbd323a5dd0f9786f12e2c07d474a9..19bc869ddef840b756478bf48f0e0b9d7c8250e6 100644 (file)
@@ -1,3 +1,11 @@
+Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
+
+       * gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
+       overflow menu.
+       
+       * gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public. 
+       [#127726]
+
 2004-01-16  Federico Mena Quintero  <federico@ximian.com>
 
        * gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
index eabd4d9b584dd169a4ced9043fb267b589a5f8dd..7cfeb6ec24a20382a3384d4914e27888769e8eba 100644 (file)
@@ -3602,7 +3602,7 @@ gtk_toolbar_finalize (GObject *object)
   GList *list;
   GtkToolbar *toolbar = GTK_TOOLBAR (object);
   GtkToolbarPrivate *priv = GTK_TOOLBAR_GET_PRIVATE (toolbar);
-  
+
   if (toolbar->tooltips)
     g_object_unref (toolbar->tooltips);
 
@@ -3618,6 +3618,9 @@ gtk_toolbar_finalize (GObject *object)
 
   g_timer_destroy (priv->timer);
 
+  if (priv->menu)
+    gtk_widget_destroy (priv->menu);
+  
   if (priv->idle_id)
     g_source_remove (priv->idle_id);
   
index 195b38657f0bc7fb4b75548c68d5a76276ac30e5..a7fa7bdc7678d5a1cb942f82470f50ca3b3dadec 100644 (file)
@@ -76,14 +76,14 @@ struct _GtkToolbarChild
   GtkWidget *label;
 };
 
+#endif /* GTK_DISABLE_DEPRECATED */
+
 typedef enum
 {
   GTK_TOOLBAR_SPACE_EMPTY,
   GTK_TOOLBAR_SPACE_LINE
 } GtkToolbarSpaceStyle;
 
-#endif /* GTK_DISABLE_DEPRECATED */
-
 typedef struct _GtkToolbar           GtkToolbar;
 typedef struct _GtkToolbarClass      GtkToolbarClass;
 typedef struct _GtkToolbarPrivate    GtkToolbarPrivate;
@@ -92,7 +92,7 @@ struct _GtkToolbar
 {
   GtkContainer container;
 
-  /*< private >*/
+  /*< public >*/
   gint             num_children;
   GList           *children;
   GtkOrientation   orientation;
@@ -101,6 +101,7 @@ struct _GtkToolbar
   
   GtkTooltips     *tooltips;
   
+  /*< private >*/
   gint             button_maxw;                /* maximum width of homogeneous children */
   gint             button_maxh;                /* maximum height of homogeneous children */
   
@@ -164,8 +165,13 @@ void            gtk_toolbar_set_drop_highlight_item   (GtkToolbar      *toolbar,
                                                       gint             index);
 
 
-/* internal function */
-gchar *        _gtk_toolbar_elide_underscores (const gchar *original);
+/* internal functions */
+gchar *                     _gtk_toolbar_elide_underscores (const gchar *original);
+/* these two functions actually accept NULL for the toolbar, in which case
+ * you'll get a default value
+ */
+int                 _gtk_toolbar_get_space_size    (GtkToolbar *toolbar);
+GtkToolbarSpaceStyle _gtk_toolbar_get_space_style   (GtkToolbar *toolbar);
 
 #ifndef GTK_DISABLE_DEPRECATED
 void       gtk_toolbar_set_icon_size   (GtkToolbar      *toolbar,